<?php

class UserServiceUtils {
	
	/**
	 * Metoda opłaca część serwisu
	 * @param $service usługa
	 * @param $part nr części
	 */
	public static function pay(UserService $service, $part) {
		return Manager::getInstance ()->execute ( new UserServicePayCommand ($service, $part ) );
	}
	
	/**
	 * Zakup przez uzytkownika uslugi
	 */
	public static function buy(Service $service, User $user) {
		return Manager::getInstance ()->execute ( new UserServiceBuyCommand ( $service, $user ) );
	}
	
	/**
	 * Wyszukanie serwisów użytkownika
	 */
	public static function find(UserServiceSearchControls $controls) {
		return Manager::getInstance ()->execute ( new UserServiceFindCommand ( $controls ) );
	}
	
	/**
	 * Metoda zwraca usługę użytkownika od danym id
	 * @param $id identyfikator usługi
	 * @return usługa użytkownika
	 */
	public static function get($id) {
		return Manager::getInstance ()->execute ( new UserServiceGetCommand ( $id ) );
	}
}

?>